project(
    'amalgam',
    'c', 'cpp', 'cython',
    version: '0.1',
    default_options: ['cpp_std=c++17', 'c_std=c11', 'unify=on']
)

## Set CMake default behavoir
#set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib") # Place static libs in lib/
#set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib") # Place shared libs in lib/
#set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin") # Place programs in bin/

## Define dependencies for later
glew = dependency('glew')
glfw = dependency('glfw3')

## Add primary projects to build
subdir('src/backends/opengl')
subdir('src/app')

## Define custom commands
run_target('tarball', command: 'scripts/tarball.sh')